import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
// import { fileURLToPath, URL } from 'node:url'


// https://vitejs.dev/config/
export default defineConfig({
	plugins: [vue()],
	build: {
		lib: {
			entry: resolve(__dirname, 'src/components/index.ts'),
			name: 'TestPub',
			fileName: (format) => `testpub.${format}.js`
		},
		rollupOptions: {
			// 确保外部化处理那些你不想打包进库的依赖
			external: ['vue'],
			output: {
				// 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量
				globals: {
					vue: 'Vue'
				}
			}
		}
	},
	resolve: {
		alias: {
			'@': resolve(__dirname, './src'),

            // '@': fileURLToPath(new URL('./src', import.meta.url))
		}
	},
	define: {
		'process.env': {
			VUE_APP_BASE_URL: '/api',                 // 内容自定义，根据项目需求
			VUE_APP_UCS_URL: '/ucs',                  // 内容自定义，根据项目需求
			VUE_APP_UCS_UPLOAD_URL: '/upload'         // 内容自定义
		},
	},
	server:{
		host: true, // 监听所有地址
		port: 3000, //指定开发服务器端口：默认3000
		open: true, //启动时自动在浏览器中打开
		cors: false, //为开发服务器配置 CORS
		proxy: {
			//配置自定义代理规则
			'/api': {
				target: 'http://192.168.1.97:108',
				changeOrigin: true, //是否跨域
				rewrite: path => path.replace(/^\/api/, '')
			}
		}
	}
})
